{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Variational API quickstart\n",
    "\n",
    "The variational inference (VI) API is focused on approximating posterior distributions for Bayesian models. Common use cases to which this module can be applied include:\n",
    "\n",
    "* Sampling from model posterior and computing arbitrary expressions\n",
    "* Conduct Monte Carlo approximation of expectation, variance, and other statistics\n",
    "* Remove symbolic dependence on PyMC3 random nodes and evaluate expressions (using `eval`)\n",
    "* Provide a bridge to arbitrary Theano code\n",
    "\n",
    "Sounds good, doesn't it?\n",
    "\n",
    "The module provides an interface to a variety of inference methods, so you are free to choose what is most appropriate for the problem."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "%matplotlib inline\n",
    "import matplotlib.pyplot as plt\n",
    "import pymc3 as pm\n",
    "import theano\n",
    "import numpy as np\n",
    "\n",
    "np.random.seed(42)\n",
    "pm.set_tt_rng(42)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Basic setup\n",
    "\n",
    "We do not need complex models to play with the VI API; let's begin with a simple mixture model:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "w = pm.floatX([.2, .8])\n",
    "mu = pm.floatX([-.3, .5])\n",
    "sd = pm.floatX([.1, .1])\n",
    "\n",
    "with pm.Model() as model:\n",
    "    x = pm.NormalMixture('x', w=w, mu=mu, sigma=sd, dtype=theano.config.floatX)\n",
    "    x2 = x ** 2\n",
    "    sin_x = pm.math.sin(x)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can't compute analytical expectations for this model. However, we can obtain an approximation using Markov chain Monte Carlo methods; let's use NUTS first. \n",
    "\n",
    "To allow samples of the expressions to be saved, we need to wrap them in `Deterministic` objects:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "with model:\n",
    "    pm.Deterministic('x2', x2)\n",
    "    pm.Deterministic('sin_x', sin_x)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Auto-assigning NUTS sampler...\n",
      "Initializing NUTS using jitter+adapt_diag...\n",
      "Multiprocess sampling (2 chains in 2 jobs)\n",
      "NUTS: [x]\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "        <style>\n",
       "            /* Turns off some styling */\n",
       "            progress {\n",
       "                /* gets rid of default border in Firefox and Opera. */\n",
       "                border: none;\n",
       "                /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "                background-size: auto;\n",
       "            }\n",
       "            .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "                background: #F44336;\n",
       "            }\n",
       "        </style>\n",
       "      <progress value='101000' class='' max='101000', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [101000/101000 00:29<00:00 Sampling 2 chains, 0 divergences]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "The estimated number of effective samples is smaller than 200 for some parameters.\n"
     ]
    }
   ],
   "source": [
    "with model:\n",
    "    trace = pm.sample(50000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x432 with 6 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "pm.traceplot(trace);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Above are traces for $x^2$ and $sin(x)$. We can see there is clear multi-modality in this model. One drawback, is that you need to know in advance what exactly you want to see in trace and wrap it with `Deterministic`.\n",
    "\n",
    "The VI API takes an alternate approach: You obtain inference from model, then calculate expressions based on this model afterwards. \n",
    "\n",
    "Let's use the same model:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "with pm.Model() as model:\n",
    "    \n",
    "    x = pm.NormalMixture('x', w=w, mu=mu, sigma=sd, dtype=theano.config.floatX)\n",
    "    x2 = x ** 2\n",
    "    sin_x = pm.math.sin(x)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here we will use automatic differentiation variational inference (ADVI)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "        <style>\n",
       "            /* Turns off some styling */\n",
       "            progress {\n",
       "                /* gets rid of default border in Firefox and Opera. */\n",
       "                border: none;\n",
       "                /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "                background-size: auto;\n",
       "            }\n",
       "            .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "                background: #F44336;\n",
       "            }\n",
       "        </style>\n",
       "      <progress value='10000' class='' max='10000', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [10000/10000 00:00<00:00 Average Loss = 2.2413]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Finished [100%]: Average Loss = 2.2687\n"
     ]
    }
   ],
   "source": [
    "with model:\n",
    "    mean_field = pm.fit(method='advi')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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s88yZswYLrjggnbna2howGQytXiY23hNxaysLAIDA886noODA5deeimbNm1qdz5rFermzqTwKJZlZ3Ko8uz7RIV9M+odQJyb748UsLeshBf7J2M02M/fKzExMWzZsqXFsM2bNwNQVFTUPGzOnDkEBQVxyy23tPpa8+bN44YbbuCf//wnsbGxzJs3j4yMDN577z127drVoXw9e57+7um+vr6nDDObzZhMJsrKyli4cCGbN2/mjTfeaNP7hIaGcuTIkQ5ltFYPxibySXYWr+3by+uDhuodR1gwKTgrppTijf0p9HZz5+rQcL3jdKt779E69wgAABxkSURBVL2X++67j3fffZfrr7+ezZs388orrwCNazYAmZmZvPzyy/zwww9n3MQ4YcIECgsLyc3NJTo6GgcHB6688koeeeQRQkNDmTdvHnPnzgXgySef5P777z9rvp9++ql5s+fvFixYwKeffnrKuFdddVXz/x0dHXn00Ue57777zr4QaPwM2JteLq7cERXLWxlp3BEVS7+ePnpHEhZKCs6KrSs8zK7SYl7on4yjHa29Adxxxx3s3LmT++67j7vvvhs3Nzfmzp3LQw89REBAANBYRhMmTCAhIYGSkhKgcW2ptraWkpISevTo0Vx8bm5uxMXFAfDdd9+xc+dOli5dys6dO3n66af55ZdfABg2bBjDhw+nX79+Z8w3cODAU466PPnIyN+99tprDB8+HE9PTyIjI0/Z9HomeXl5zfNrT+6JSWBJ9kHmpOziv8NGdds+UmFd7Ou3og0xK8Wr+/YQ6urGNXa29gaNa2lvvvkmR48eZdeuXRw5cqR5X9nv/+7bt49PP/0Ub2/v5kdOTg5vvvkm3t7e5OXlnfK6JpOJqVOn8uKLL+Lq6sq6deu49NJLSUhIICEhgdGjR/Pjjz926rzExMSQnJxMfHx8u8rNZDLxww8/MGzYsE7NYw28HB35W1wfNh0/yg+FBXrHERZK1uCs1FcFuewpLeGVAUNwsrO1txP9XlwAb731FhdeeCEJCY3X4Vy4cOEpJ1xPmjSJUaNGcd999+Hv73/K67399tt4e3tz4403Ng+rqqpq/n9lZaXFbBZ85plnyM/P595779U7ii7+Eh7Fosx05qbsZpR/oF3tgxZtIwVnherNZl5J20OcpxdXhdrPkZMn2rRpEz///DMDBgygrKyMjz/+mDVr1vDzzz83j/P70ZAncnFxoXfv3lx88cWnPFdcXMzs2bNZs2ZN87CRI0fyxBNP8P777wPwww8/8MILL3T+DJ3Fvn378PPzo66ujszMTJYsWcLXX3/NrFmzGDVqVLfnsQSOBgN/T+zLfVs38klOFjeFR+kdSVgYKTgrtDwni6zKChacf5HdnPd2MkdHR5YuXcqsWbMwGAyMGDGCDRs20Ldv3w6/5syZM7nyyisZNGhQ87CBAwfy4osvMn36dKDxiiL9+/c/5/zt9fvlxVxcXAgKCmLYsGH89NNPjBgxotuzWJLLAkNI9vbltX17uTIkDHej/EoTf9DOsrnFMrbFiGY1DQ1c/MNXhLi6s/yiS2TnurB724qOc92GH5gal8TD8X30jiO6X6u/BGWjtZVZnJnBkZoankjsK+UmBDDIx5cJQaEsOLCPozU1escRFkQKzoqU1dcxPyOVUf6BDPU99QAJIezVE4l9qTebeW3fXr2jCAsiBWdF5mekUVpfz+OJ5+kdRQiLEuHuwc0R0SzNPkh6eZnecYSFkIKzEtmVFbx/MJ1rQ8Pp08Nb7zhCWJyHYpNwNzryfMpOvaMICyEFZyXmpOzCQdN4PKHjRwkKYct8nJ15OC6JdYWHWXtETv4WUnBWYdOxQr4+nMd9MQkEnnR9QyHEH26NjCHS3YNn9+6gro13bxC2SwrOwjUoxbN7dxLs4spfo+P1jiOERXMyGHi6zwAyKyv4MDND7zhCZ1JwFm55ThYpZSU8mdQPl6ar5AshWndJQBCj/AP59/4UjtXKaQP2TArOgpXX1/Ny2m4Ge/vyp+DeescRwmo81ac/1Q0mXk2T0wbsmRScBfvX/hSO19by9HkD5KRuIdohxtOL2yJiWJJ9kL2lxXrHETqRgrNQqWUlLMpMZ1JYFP3lho5CtNvf4pLwdnJixu7tmC3kDhCie0nBWSCzUszYtY0ejo5yUrcQHdTDyYl/JPVnW/Fxludk6R1H6EAKzgJ9mnuIrcXHeTKxH95OznrHEcJqXRsaTrK3L3NTd1FSV6d3HNHNpOAsTEldHXNSdpLs7ct1vSP0jiOEVTNoGs/0G0RpfT0vpe3WO47oZlJwFualtN2U1tfzTL9BGOTAEiHOWaJXTyZHxPDxoYPsLCnSO47oRlJwFmRb0XE+PnSQKZGxJHr11DuOEDZjanwf/J1deHrXNhrkgBO7IQVnIWobGvj7zi0EuboxNT5J7zhC2BRPR0ee6tOf3aXF/CdLrnBiL6TgLMSb6alkVJTzfL/BeBgd9Y4jhM35U3BvRvkH8lLqbnKrKvWOI7qBFJwFSCkt4e2MNK4NDWdUr0C94whhkzRN47l+gwCYvus3lGyqtHlScDozmc38fecWejg68XSfAXrHEcKmhbq581hCX346eoT/5WbrHUd0MSk4nS08uJ89pSU803cQPZ2c9I4jhM27LTKGgd4+PLt3h1yM2cZJwenoQHkZr+3by/jAECYGh+odRwi74KBpvNA/mUpTPc/s2aF3HNGFpOB0Um8288j2zbg7GHmm7yC94whhV+I8e/BAbCIr83P4uiBX7ziii0jB6WReeiq7S4v5v36D8Xdx0TuOEHbnvthE+vbw5h87f+NITbXecUQXkILTwY7iIt5MT+Wa0HAmyKZJIXThZDDw2sAh1DQ08PiOLXLHARskBdfNqk0mpm3fTICzC7POk6MmhdBTtKcX0/v0Z/3RI3woJ4DbHCm4bjY3bTcHK8t5ccD5eDnKUZNC6O3m8Cgu7RXECym72F9eqncc0Ymk4LrRD0cKWJyZwe2RsVzkH6B3HCEEjSeAvzAgGQ+jI1O3/UptQ4PekUQnkYLrJgXVVTy2fTNJXj35e2JfveMIIU7g7+zCiwPOJ7WslBm7t8lVTmyEFFw3MJnNPLztV2rNDbwx+AKcHRz0jiSEOMmlAUE8GJvIspwsPs7O1DuO6ARScN3g3/tT2FJ0jOf6DSbKw1PvOEKIVkyN78Mo/0Bm7d7G9uLjescR50gKrov9cqyQN9NTub53BNeEhusdRwhxBg6axuuDhhLo6sb9WzdyVC7lZdWk4LrQ0doapm77lSgPT2afN1DvOEKINujp5MT85GEU19Xy4NaNctCJFZOC6yJmpZi2fTOl9XW8MfgC3IxGvSMJIdqoTw9vXuifzOaiY3ISuBWT37pdZMGBfaw/eoT/6zuIRK+eescRQrTT1aHhHK6pZm7qbnq5uPCU3M7K6kjBdYGfjx7hpdTdXB4cyk3hUXrHEUJ00D3R8Rypqea9g+kEuLjy1+h4vSOJdpCC62TZlRU89NsmYjy9eKF/Mpqm6R1JCNFBmqbxdJ8BHK2t4fmUXfg5u8jBYlZECq4TVZlM3L3lF8wo3jn/IjyMjnpHEkKcI4Om8cqAIRTV1vLY9s2YleK63hF6xxJtIAeZdBKlFE/s3EJ6eSn/HnQBEe4eekcSQnQSZwcHFg4ZzjC/Xjy2Ywv/kQszWwUpuE4yPyONVfm5PJ7Yl1G9AvWOI4ToZG5GI+8NGc7YgGBm7N7O2xlpekcSZyEF1wk+z83mpbQ9/CkolONLV9C7d29cXV0ZOXIkO3bsOOv0U6ZMQdO0Ux5paX98gWbNmnXacTRNY86cOV05e0JYrJSUFEaPHo2bmxvBwcHMmDGDhjact7Z161bGjRuHr68vPj4+jBkzhl9//bXFOKf7XroYjTzk4c1VIWHMTd3NnJRdNMgpBBZL9sGdo1+OFfL4js0M8fGj15ofeO6553jppZdISEjg1VdfZcyYMezZs4fAwDOv1SUkJPDBBx+0GBYREdH8/7vuuovx48e3eP6zzz5j7ty5TJgwodPmRwhrUVxczJgxY0hKSuLzzz/nwIEDTJs2DbPZzHPPPdfqdDk5OYwZM4ZBgwbx4YcfAvDSSy8xbtw4du3aRXj4HweRnO57GRsVxSvOzng6OrLgwD7Sy0t5fdBQuf2VJVJKnekhziCltFj1/epTNW7t1+pwaany8vJSs2fPbn6+oqJC+fn5qenTp5/xdSZPnqwGDx7c7vefOHGiSkhIaPd0QtiC559/XvXs2VOVlpY2D5s7d65ydXVtMexk8+fPVwaDQRUXFzcPKyoqUgaDQb311lvNw9ryvfwoM0PFrPxEXfz9Vyq9rPX3FF2q1Q6TTZQdlF9dxR2//oyb0cj7Q0awd+tWysrK+POf/9w8jru7O1dccQWrV6/u9PcvKiri22+/5aabbur01xbCGqxevZrLLrsMLy+v5mGTJk2iurqaH3/8sdXp6uvrMRqNeHj8cSCYh4cHRqOx3bfJ+UtENP8ddjEVpnqu+fl7VuXntH9GRJeRguuAwppqbt34ExWmet4fMoIQNzfS0tJwcHAgNja2xbiJiYkt9qW1JiUlBS8vL5ydnRk+fPgZv6AAy5cvp76+nkmTJp3TvAhhrdLS0khISGgxLCwsDLem72NrrrvuOtzc3Jg2bRqFhYUUFhbyyCOP4O3tzQ033NBi3LZ8L8/39eOLEWOI9vDiwd828fC2TRTX1XbOTIpzIgXXTkdra7h5448crqnivSHDSerReBmu4uJiPDw8cDjpXm/e3t5UVVVRV1fX6msOHDiQV155hZUrV/LRRx/R0NDA2LFj2bx5c6vTLFmyhEGDBhEXF9c5MyaElSkuLqZnz1Mvg+ft7U1xcXGr0wUHB7N27VpWrFhBQEAAAQEBfPrpp6xZswZ/f//m8drzvQxydeOTiy7h0fg+rM7PZdy6NXx7OL9zZlR0mBxk0g7Hamu4ZeOP5FZV8u7gCxnUwxuTydR8tZLTXbXk900eZ7qiycMPP9zi58svv5ykpCSef/55Pvvss1PGLygo4Mcff2Tu3LnnMjtCWL3WvnNn+r4VFBRw/fXXM3jwYBYuXAjAvHnzuPzyy/nll18ICwsD2v+9dDQYeCguidEBwTy2YzN3b9nAxKBQnkzqR28393OZTdFBsgbXRkW1tdyy8SeyKyt50GRgRFAwjo6OODo6Mnr0aLy9vSkvLz/lEOWSkhLc3NxwdGz7VU1cXV2ZOHEi27ZtO+3zy5YtQynFjTfeeE7zJIQ18/b2pqSk5JThpaWlp12z+91LL72EyWRi+fLljB8/nvHjx7NixQocHBx4+eWXW53ubN/L3yX16MlnI8bwSHwf1hYWMGbt17yYupvy+vq2z5zoFLIG1wZ5VVVM/vUncqsqeW/IcPq5uDF0y5bm5z09PcnLy6OhoYGMjAzi4/+4IOvp9hO0VWt/hS5ZsoThw4fTu3fvDr2uELYgISHhlH1tOTk5VFZWnvE7l5aWRp8+fVr80enk5ESfPn04cODAWd+3LdeXdTIY+FtcEn/uHclLabuZn5HGsuxMHohN5KbwKFxO2pUhuoaswZ3FvrJSbtjwA4U11SwaOpKL/APw9PQkOTm5+REfH8+FF16Il5cXn3zySfO0VVVVrFy5st3nqVVXV7N69WoGDx58ynNZWVls2rRJjp4Udm/ChAmsWbOG8vLy5mFLly7F1dWVUaNGtTpdeHg4e/bsabFfvLa2lj179rQ49/RkZ/petibQ1ZVXBg7hsxGjifH04pm9Oxj1/Ve8f3A/NXIj1a53pnMIuv1sBgvzVV6OSlq1Qg1Z84XaW1J81vGff/555erqqt5880313XffqYkTJypfX191+PDh5nEWL16sHBwcVFZWllJKqZKSEjV8+HD19ttvq++++04tWbJEDR06VDk5OaktW7ac8h5z5sxRRqNRFRYWdt6MCmGFioqKVGBgoBozZoz69ttv1TvvvKPc3d1POe80Ojpa3XHHHc0/b926VRmNRjVx4kT15ZdfqpUrV6rx48cro9GoduzYoZRq//eyrTYePaImbVirIr5YppLXfK7e2JeijtfUdPj1hFLqDB0mBXcaJrNZvZiyS0V8sUxds/47dbi6qk3Tmc1m9dxzz6mQkBDl4uKihg8frrZt29ZinA8++EABKjMzUymlVHV1tbrmmmtUaGiocnJyUl5eXuqyyy5TGzduPO179O/fX1122WXnNH9C2Iq9e/eqSy65RLm4uKjAwED11FNPKZPJ1GKc8PBwNXny5BbDvvvuOzVixAjl7e2tvL291ciRI9XatWubn2/v97K9Nh0rVLdu/FFFfLFMxX+5XP19xxaVVlrSKa9th1rtME2d+cRGu7vIWkldHY9s/5V1hYe5MSyS2ecNxFm2lwshukB6eRmLMtP5NOcQNeYGBnv7cmNYJBODe+NulEMk2qjVnaJScCdYe6SAJ3dupbiulpnnDeQv4VFyw1IhRJcrrqvlk5wslmVncqCiHHcHI1eE9ObGsCj69/SW30NnJgV3Jkdra/i/vTv5PC+beE8vXhk4hD49vPWOJYSwM0opfis+ztLsTFbl51Dd0EC8pxdXhYRzZUgYIW5ueke0RFJwp1NlMrE4M4P5GWnUmhu4JzqeB2ITZZOkEEJ35fX1rMzPYUVOFtuKjwNwvo8fV4eEMSE4FG8nZ50TWgwpuBMdr63lv4cOsDgzg+N1tVzaK4h/9ulPtIen3tGEEOIUOVWVfJ6bzed5h8ioKMdR0xjRK5CJQaGMCQimh5Nd36pHCq62oYENxwr5NDeLbw/nU2c2M8o/kIfiEhns46d3PCGEOCulFKllpXyWd4hV+bnkV1dh1DQu8gtgQnAoYwOC8XG2uzU7+yu4BqXYV1bKlqJj/Hr8KOuPHqbCZMLb0YkrQ8O4JTyaGE+vs7+QEEJYIKUUu0qLWZ2fy+qCXLKrKnHQNC7w9WdCUChjA4Pp5eKqd8zuYJsF16AURXW1HKutIbeqikOVFWRVlpNZWcGukiIqTCYAglxcGdkrkLGBwYzwD8TJIBdwEULYDqUUKWUlfJWfy1cFuWRVVgDQx6snFwcEcUmvQAZ4++Jgm0dj6ltwZfX1bD5+lAalMClz479mRYMyU68a/238ufF5k1lRr8xUmkxUmuqpajBRaTJRZWr8t7LBREldHcV1tZhPeq+ejk6Eu3vQt4c3yT5+JPv4yZFHQgi7oZRiX3kZa48UsLawgG3Fx2lQip6OTozwD+Ai/wCG+PgR4e5hK6cf6FtwKaUlXP7Tt+2ezt3BiJvRiLvRiJtD47+//9/L0RE/Z5emhzPBrm5EunvS0753tgohRAuldXWsP3aEdUcK+PHoYY7VNt6MtZezC0N8/Rnq68/5Pn7EeHpZ6xqevgVXbTKRXlGGUTNgNGg4aAaMmnbCz3/836gZmn7WbOWvCyGEsAhKKQ5UlLP5+FE2Nx2fcLimGgAXgwNxnl4kePUg3qsH4e4ehLt50NvN3dJPnbLNfXC2YNasWcyePVvvGELYnZkzZzJr1iy9Y+hKKUVOVSVbio6RWlZKWlkJaWWlHK+rbR5HA3q5uODt5Iy3oxM9nZzxcnTEyWDAyeCAs8GAo8GAk8GAg2ZAoVAKzCf8C2BWCrNSKKB/Tx/GBAZ31my0WnBysTMhhLBTmqYR5u5BmLtH8zClFMfrasmurORQVQU5VZXkVVVSVFdHSV0t+8tLKauvp95sps7cQJ3ZjOnMK0otGICbI6I7s+BaJQUnhBCimaZpzcc3DPLxbdM0ZqWobyo6A2Bo2r1k0DQMmoZG42pWd+92kk2UQgghrFmrrSknhAkhhLBJUnBCCCFskhScEEIImyQFJ4QQwiZJwQkhhLBJUnBCCCFskhScEEIImyQFJ4QQwiZJwQkhhLBJUnBCCCFskhScEEIImyQFJ4QQwiad8WLLs2fP/hrw6+T3DAbyO/k17YEst46TZddxsuw6RpZbx7V32R2bOXPm+NM+o5Tq1sesWbNUd7+nLTxkucmyk2VnPQ9Zbpax7GQTpRBCCJukR8HN1uE9bYEst46TZddxsuw6RpZbx3XasjvbDU+FEEIIqySbKIUQQtgkKTghhBA2SQpOCCGETerSgtM07W5N09ZqmlaiaZrSNC2ijdNdp2laiqZptU3/XtOVOS2RpmnOmqa9oWnaMU3TKjVN+0LTtNCzTDOraTmf+DjcXZn1omna/ZqmZWqaVqNp2m+apo04y/ijmsar0TTtoKZp93ZXVkvSnuWmadrFp/lsKU3TErozsyXQNG1k0/cxr2kZTGnDNH01TftR07TqpulmaJqmdUNci9He5aZpWkQrn7nTn/N2Gl29BucGfAPMausEmqYNA5YCHwEDmv79RNO0oV0R0IK9DlwH3ASMALyALzVNczjLdPuAoBMefbsypN40TbsR+BfwPDAQ+AVYrWlaWCvjRwJfNY03EJgDvKFp2nXdk9gytHe5naAPLT9f6V2Z00J5AHuAh4Hqs42saZoX8C1wBDgf+BvwOPBoF2a0RO1abicYT8vP3A9tnrI7TtwDkgEFRLRh3KXAtycN+w74WO8TELvrAfQA6oCbTxjWGzADl51hulnAHr3zd/Oy+hV496Rh6cCcVsafC6SfNGwhsFHvebHw5XZx03fYT+/slvQAKoApZxnnPqAMcD1h2FNAHk1Hstvbo43LLaLpM5fc0fexxH1ww2hc6zvRGuBCHbLoZTDgyAnLQSmVA6Ry9uUQ1bQJIFPTtCWapkV1YU5daZrmROOyOvnz8g2tL6fWPl/JmqY5dm5Cy9TB5fa7rZqmFWia9r2maZd0SUDbMwxYr5Q6ca1lDY2XpIrQJZF1+VTTtEJN0zZomnZ9eya0xIILpHFV/kRHmobbi0CgATh20vCzLYdfgSnABOCvTeP+ommabxdktAR+gAPt+7y09vky0vnXXbVUHVluBTSuiVwHXEvjpvDvNU0b2VUhbUhrn7nfnxOnVwE8BvwZmAh8DyzVNO2Wtr6Asb3vqGnac8D0s4x2iVJqXXtf+wQnn32unWaY1WnrsjvTS3CG5aCUWn3S+20CDgKTgVfbGNMatffzcrrxTzfc1rV5uSml9tFYar/b2HTQ2GPAT10RzsbIZ66dlFLHgFdOGLRV0zQ/4Ang/7XlNdpdcDQe/HC2F8/uwOv+7jCn/lXTi1P/ArJGbV12F9D4F7YfcPSE53rRjl8mSqkKTdP2ArHtzGktjtG4ptuez0trny8TcLxT01mujiy30/kVmNRZoWxYa585sI3fa93pV+D2to7c7oJratWTN511po3AWOClE4aNpfEoL6vW1mWnadpvQD2N8/3fpmGhQCLtWA6aprkACcDajuS1dEqpuqZlNRb45ISnxgIrWplsI3D1ScPGAluVUvWdn9LydHC5nc4AGjddijPbCMzVNM1FKVXTNGwsjbeEydItlXVq32eui4+UCWwK9BcaV8UnNv3sc8I433PCkVs07uQ2Af+g8ZfzP2j8ZT9U7yN/uvkoo/k0HmU1hsbDuNcCOwCHE8ZJAx484eeXgVFAJDAU+JLGo7fC9Z6fLlxON9J4xOldNP4B8C8at92HNz3/IfDhCeNHApU0rk0nNk1XB1yn97xY+HKbSuMfBrE0niowp+k7fa3e86LDsvNo+j02AKgCZjT9P6zp+TnA9yeM34PGtbglwHk07sMsA6bpPS8WvtwmN3VHIhBP4+bwOuCRNr9nF8/QrKYvwcmPKSeMkwUsOmm665t+edfReOSgPX6JXIA3aNxsVgWsBHqfNI4CZp3w8xIa/yqsayrHFUCS3vPSDcvq/qbPUS3wGzDyhOfWAetOGn8UsK1p/EzgXr3nwdKXG437PTJoPH+pCFgPTNR7HnRabhe38nttUdPzi4Csk6bpS+PuhRoa10BmYmenCLR3uTUVXAqNf5CWAVuBW9rznnI3ASGEEDbJEk8TEEIIIc6ZFJwQQgibJAUnhBDCJknBCSGEsElScEIIIWySFJwQQgibJAUnhBDCJknBCSGEsElScEIIIWzS/we7cf50jeFxbgAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "pm.plot_posterior(mean_field.sample(1000), color='LightSeaGreen');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Notice that ADVI has failed to approximate the multimodal distribution, since it uses a Gaussian distribution that has a single mode.\n",
    "\n",
    "## Checking convergence"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Help on class CheckParametersConvergence in module pymc3.variational.callbacks:\n",
      "\n",
      "class CheckParametersConvergence(Callback)\n",
      " |  CheckParametersConvergence(every=100, tolerance=0.001, diff='relative', ord=inf)\n",
      " |  \n",
      " |  Convergence stopping check\n",
      " |  \n",
      " |  Parameters\n",
      " |  ----------\n",
      " |  every : int\n",
      " |      check frequency\n",
      " |  tolerance : float\n",
      " |      if diff norm < tolerance : break\n",
      " |  diff : str\n",
      " |      difference type one of {'absolute', 'relative'}\n",
      " |  ord : {non-zero int, inf, -inf, 'fro', 'nuc'}, optional\n",
      " |      see more info in :func:`numpy.linalg.norm`\n",
      " |  \n",
      " |  Examples\n",
      " |  --------\n",
      " |  >>> with model:\n",
      " |  ...     approx = pm.fit(\n",
      " |  ...         n=10000, callbacks=[\n",
      " |  ...             CheckParametersConvergence(\n",
      " |  ...                 every=50, diff='absolute',\n",
      " |  ...                 tolerance=1e-4)\n",
      " |  ...         ]\n",
      " |  ...     )\n",
      " |  \n",
      " |  Method resolution order:\n",
      " |      CheckParametersConvergence\n",
      " |      Callback\n",
      " |      builtins.object\n",
      " |  \n",
      " |  Methods defined here:\n",
      " |  \n",
      " |  __call__(self, approx, _, i)\n",
      " |      Call self as a function.\n",
      " |  \n",
      " |  __init__(self, every=100, tolerance=0.001, diff='relative', ord=inf)\n",
      " |      Initialize self.  See help(type(self)) for accurate signature.\n",
      " |  \n",
      " |  ----------------------------------------------------------------------\n",
      " |  Static methods defined here:\n",
      " |  \n",
      " |  flatten_shared(shared_list)\n",
      " |  \n",
      " |  ----------------------------------------------------------------------\n",
      " |  Data descriptors inherited from Callback:\n",
      " |  \n",
      " |  __dict__\n",
      " |      dictionary for instance variables (if defined)\n",
      " |  \n",
      " |  __weakref__\n",
      " |      list of weak references to the object (if defined)\n",
      "\n"
     ]
    }
   ],
   "source": [
    "help(pm.callbacks.CheckParametersConvergence)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's use the default arguments for `CheckParametersConvergence` as they seem to be reasonable."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "        <style>\n",
       "            /* Turns off some styling */\n",
       "            progress {\n",
       "                /* gets rid of default border in Firefox and Opera. */\n",
       "                border: none;\n",
       "                /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "                background-size: auto;\n",
       "            }\n",
       "            .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "                background: #F44336;\n",
       "            }\n",
       "        </style>\n",
       "      <progress value='10000' class='' max='10000', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [10000/10000 00:00<00:00 Average Loss = 2.2559]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Finished [100%]: Average Loss = 2.2763\n"
     ]
    }
   ],
   "source": [
    "from pymc3.variational.callbacks import CheckParametersConvergence\n",
    "\n",
    "with model:\n",
    "    mean_field = pm.fit(method='advi', callbacks=[CheckParametersConvergence()])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can access inference history via `.hist` attribute."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(mean_field.hist);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This is not a good convergence plot, despite the fact that we ran many iterations. The reason is that the mean of the ADVI approximation is close to zero, and therefore taking the relative difference (the default method) is unstable for checking convergence."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "        <style>\n",
       "            /* Turns off some styling */\n",
       "            progress {\n",
       "                /* gets rid of default border in Firefox and Opera. */\n",
       "                border: none;\n",
       "                /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "                background-size: auto;\n",
       "            }\n",
       "            .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "                background: #F44336;\n",
       "            }\n",
       "        </style>\n",
       "      <progress value='3347' class='' max='10000', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      33.47% [3347/10000 00:00<00:00 Average Loss = 3.9215]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Convergence achieved at 4700\n",
      "Interrupted at 4,699 [46%]: Average Loss = 4.7996\n"
     ]
    }
   ],
   "source": [
    "with model:\n",
    "    mean_field = pm.fit(method='advi', callbacks=[pm.callbacks.CheckParametersConvergence(diff='absolute')])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(mean_field.hist);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "That's much better! We've reached convergence after less than 5000 iterations."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Tracking parameters"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Another usefull callback allows users to track parameters. It allows for the tracking of arbitrary statistics during inference, though it can be memory-hungry. Using the `fit` function, we do not have direct access to the approximation before inference. However, tracking parameters requires access to the approximation. We can get around this constraint by using the object-oriented (OO) API for inference."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "with model:\n",
    "    advi = pm.ADVI()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<pymc3.variational.approximations.MeanField at 0x7f5f83fd2c50>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "advi.approx"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Different approximations have different hyperparameters. In mean-field ADVI, we have $\\rho$ and $\\mu$ (inspired by [Bayes by BackProp](https://arxiv.org/abs/1505.05424))."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'mu': mu, 'rho': rho}"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "advi.approx.shared_params"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "There are convenient shortcuts to relevant statistics associated with the approximation. This can be useful, for example, when specifying a mass matrix for NUTS sampling:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(array([0.34]), array([0.69314718]))"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "advi.approx.mean.eval(), advi.approx.std.eval()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can roll these statistics into the `Tracker` callback."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "tracker = pm.callbacks.Tracker(\n",
    "    mean=advi.approx.mean.eval,  # callable that returns mean\n",
    "    std=advi.approx.std.eval  # callable that returns std\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now, calling `advi.fit` will record the mean and standard deviation of the approximation as it runs."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "        <style>\n",
       "            /* Turns off some styling */\n",
       "            progress {\n",
       "                /* gets rid of default border in Firefox and Opera. */\n",
       "                border: none;\n",
       "                /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "                background-size: auto;\n",
       "            }\n",
       "            .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "                background: #F44336;\n",
       "            }\n",
       "        </style>\n",
       "      <progress value='20000' class='' max='20000', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [20000/20000 00:01<00:00 Average Loss = 1.9568]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Finished [100%]: Average Loss = 1.9589\n"
     ]
    }
   ],
   "source": [
    "approx = advi.fit(20000, callbacks=[tracker])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can now plot both the evidence lower bound and parameter traces:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1152x648 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(16, 9))\n",
    "mu_ax = fig.add_subplot(221)\n",
    "std_ax = fig.add_subplot(222)\n",
    "hist_ax = fig.add_subplot(212)\n",
    "mu_ax.plot(tracker['mean'])\n",
    "mu_ax.set_title('Mean track')\n",
    "std_ax.plot(tracker['std'])\n",
    "std_ax.set_title('Std track')\n",
    "hist_ax.plot(advi.hist)\n",
    "hist_ax.set_title('Negative ELBO track');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Notice that there are convergence issues with the mean, and that lack of convergence does not seem to change the ELBO trajectory significantly. As we are using the OO API, we can run the approximation longer until convergence is achieved."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "        <style>\n",
       "            /* Turns off some styling */\n",
       "            progress {\n",
       "                /* gets rid of default border in Firefox and Opera. */\n",
       "                border: none;\n",
       "                /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "                background-size: auto;\n",
       "            }\n",
       "            .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "                background: #F44336;\n",
       "            }\n",
       "        </style>\n",
       "      <progress value='100000' class='' max='100000', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [100000/100000 00:08<00:00 Average Loss = 1.8638]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Finished [100%]: Average Loss = 1.8422\n"
     ]
    }
   ],
   "source": [
    "advi.refine(100000)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's take a look:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1152x648 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(16, 9))\n",
    "mu_ax = fig.add_subplot(221)\n",
    "std_ax = fig.add_subplot(222)\n",
    "hist_ax = fig.add_subplot(212)\n",
    "mu_ax.plot(tracker['mean'])\n",
    "mu_ax.set_title('Mean track')\n",
    "std_ax.plot(tracker['std'])\n",
    "std_ax.set_title('Std track')\n",
    "hist_ax.plot(advi.hist)\n",
    "hist_ax.set_title('Negative ELBO track');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We still see evidence for lack of convergence, as the mean has devolved into a random walk. This could be the result of choosing a poor algorithm for inference. At any rate, it is unstable and can produce very different results even using different random seeds.\n",
    "\n",
    "Let's compare results with the NUTS output:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import seaborn as sns\n",
    "ax = sns.kdeplot(trace['x'], label='NUTS');\n",
    "sns.kdeplot(approx.sample(10000)['x'], label='ADVI');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Again, we see that ADVI is not able to cope with multimodality; we can instead use SVGD, which generates an approximation based on a large number of particles."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "        <style>\n",
       "            /* Turns off some styling */\n",
       "            progress {\n",
       "                /* gets rid of default border in Firefox and Opera. */\n",
       "                border: none;\n",
       "                /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "                background-size: auto;\n",
       "            }\n",
       "            .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "                background: #F44336;\n",
       "            }\n",
       "        </style>\n",
       "      <progress value='300' class='' max='300', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [300/300 00:36<00:00]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "with model:\n",
    "    svgd_approx = pm.fit(300, method='svgd', inf_kwargs=dict(n_particles=1000), \n",
    "                         obj_optimizer=pm.sgd(learning_rate=0.01))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "ax = sns.kdeplot(trace['x'], label='NUTS');\n",
    "sns.kdeplot(approx.sample(10000)['x'], label='ADVI');\n",
    "sns.kdeplot(svgd_approx.sample(2000)['x'], label='SVGD');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "That did the trick, as we now have a multimodal approximation using SVGD. \n",
    "\n",
    "With this, it is possible to calculate arbitrary functions of the parameters with this variational approximation. For example we can calculate $x^2$ and $sin(x)$, as with the NUTS model."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [],
   "source": [
    "# recall x ~ NormalMixture\n",
    "a = x**2\n",
    "b = pm.math.sin(x)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "To evaluate these expressions with the approximation, we need `approx.sample_node`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Help on method sample_node in module pymc3.variational.opvi:\n",
      "\n",
      "sample_node(node, size=None, deterministic=False, more_replacements=None) method of pymc3.variational.approximations.Empirical instance\n",
      "    Samples given node or nodes over shared posterior\n",
      "    \n",
      "    Parameters\n",
      "    ----------\n",
      "    node : Theano Variables (or Theano expressions)\n",
      "    size : None or scalar\n",
      "        number of samples\n",
      "    more_replacements : `dict`\n",
      "        add custom replacements to graph, e.g. change input source\n",
      "    deterministic : bool\n",
      "        whether to use zeros as initial distribution\n",
      "        if True - zero initial point will produce constant latent variables\n",
      "    \n",
      "    Returns\n",
      "    -------\n",
      "    sampled node(s) with replacements\n",
      "\n"
     ]
    }
   ],
   "source": [
    "help(svgd_approx.sample_node)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array(0.20617133)"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a_sample = svgd_approx.sample_node(a)\n",
    "a_sample.eval()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array(0.23059109)"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a_sample.eval()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array(0.01689826)"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a_sample.eval()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Every call yields a different value from the same theano node. This is because it is **stochastic**. \n",
    "\n",
    "By applying replacements, we are now free of the dependence on the PyMC3 model; instead, we now depend on the approximation. Changing it will change the distribution for stochastic nodes:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.kdeplot(np.array([a_sample.eval() for _ in range(2000)]));\n",
    "plt.title('$x^2$ distribution');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "There is a more convinient way to get lots of samples at once: `sample_node`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [],
   "source": [
    "a_samples = svgd_approx.sample_node(a, size=1000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.kdeplot(a_samples.eval());\n",
    "plt.title('$x^2$ distribution');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The `sample_node` function includes an additional dimension, so taking expectations or calculating variance is specified by `axis=0`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array(0.0963961)"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a_samples.var(0).eval()  # variance"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array(0.24696937)"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a_samples.mean(0).eval()  # mean"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "A symbolic sample size can also be specified:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [],
   "source": [
    "i = theano.tensor.iscalar('i')\n",
    "i.tag.test_value = 1\n",
    "a_samples_i = svgd_approx.sample_node(a, size=i)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(100,)"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a_samples_i.eval({i: 100}).shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(10000,)"
      ]
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "a_samples_i.eval({i: 10000}).shape"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Unfortunately the size must be a scalar value."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Converting a Trace to an Approximation\n",
    "\n",
    "We can convert a MCMC trace into an Approximation. It will have the same API as approximations above with same `sample_node` methods:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<pymc3.variational.approximations.Empirical at 0x7f5f80edcc88>"
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "trace_approx = pm.Empirical(trace, model=model)\n",
    "trace_approx"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We can then draw samples from the `Emipirical` object:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "pm.plot_posterior(trace_approx.sample(10000));"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Multilabel logistic regression\n",
    "\n",
    "Let's illustrate the use of `Tracker` with the famous Iris dataset. We'll attempy multi-label classification and compute the expected accuracy score as a diagnostic."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.datasets import load_iris\n",
    "from sklearn.model_selection import train_test_split\n",
    "import theano.tensor as tt\n",
    "import pandas as pd\n",
    "\n",
    "X, y = load_iris(True)\n",
    "X_train, X_test, y_train, y_test = train_test_split(X, y)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "![](http://5047-presscdn.pagely.netdna-cdn.com/wp-content/uploads/2015/04/iris_petal_sepal.png)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "A relatively simple model will be sufficient here because the classes are roughly linearly separable; we are going to fit multinomial logistic regression."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/junpenglao/anaconda3/lib/python3.7/site-packages/Theano-1.0.4-py3.7.egg/theano/tensor/subtensor.py:2197: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
      "  rval = inputs[0].__getitem__(inputs[1:])\n",
      "/home/junpenglao/anaconda3/lib/python3.7/site-packages/Theano-1.0.4-py3.7.egg/theano/tensor/subtensor.py:2197: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
      "  rval = inputs[0].__getitem__(inputs[1:])\n"
     ]
    }
   ],
   "source": [
    "Xt = theano.shared(X_train)\n",
    "yt = theano.shared(y_train)\n",
    "\n",
    "with pm.Model() as iris_model:\n",
    "    \n",
    "    # Coefficients for features\n",
    "    β = pm.Normal('β', 0, sigma=1e2, shape=(4, 3))\n",
    "    # Transoform to unit interval\n",
    "    a = pm.Flat('a', shape=(3,))\n",
    "    p = tt.nnet.softmax(Xt.dot(β) + a)\n",
    "    \n",
    "    observed = pm.Categorical('obs', p=p, observed=yt)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Applying replacements in practice\n",
    "PyMC3 models have symbolic inputs for latent variables. To evaluate an espression that requires knowledge of latent variables, one needs to provide fixed values. We can use values approximated by VI for this purpose. The function `sample_node` removes the symbolic dependenices. \n",
    "\n",
    "`sample_node` will use the whole distribution at each step, so we will use it here. We can apply more replacements in single function call using the `more_replacements` keyword argument in both replacement functions.\n",
    "\n",
    "> **HINT:** You can use `more_replacements` argument when calling `fit` too:\n",
    ">   * `pm.fit(more_replacements={full_data: minibatch_data})`\n",
    ">   * `inference.fit(more_replacements={full_data: minibatch_data})`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [],
   "source": [
    "with iris_model:\n",
    "    \n",
    "    # We'll use SVGD\n",
    "    inference = pm.SVGD(n_particles=500, jitter=1)\n",
    "    \n",
    "    # Local reference to approximation\n",
    "    approx = inference.approx\n",
    "    \n",
    "    # Here we need `more_replacements` to change train_set to test_set\n",
    "    test_probs = approx.sample_node(p, more_replacements={Xt: X_test}, size=100)\n",
    "    \n",
    "    # For train set no more replacements needed\n",
    "    train_probs = approx.sample_node(p)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "By applying the code above, we now have 100 sampled probabilities (default number for `sample_node` is `None`) for each observation."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Next we create symbolic expressions for sampled accuracy scores:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "test_ok = tt.eq(test_probs.argmax(-1), y_test)\n",
    "train_ok = tt.eq(train_probs.argmax(-1), y_train)\n",
    "test_accuracy = test_ok.mean(-1)\n",
    "train_accuracy = train_ok.mean(-1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Tracker expects callables so we can pass `.eval` method of theano node that is function itself. \n",
    "\n",
    "Calls to this function are cached so they can be reused."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [],
   "source": [
    "eval_tracker = pm.callbacks.Tracker(\n",
    "    test_accuracy=test_accuracy.eval,\n",
    "    train_accuracy=train_accuracy.eval\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "        <style>\n",
       "            /* Turns off some styling */\n",
       "            progress {\n",
       "                /* gets rid of default border in Firefox and Opera. */\n",
       "                border: none;\n",
       "                /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "                background-size: auto;\n",
       "            }\n",
       "            .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "                background: #F44336;\n",
       "            }\n",
       "        </style>\n",
       "      <progress value='100' class='' max='100', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [100/100 00:06<00:00]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/junpenglao/anaconda3/lib/python3.7/site-packages/Theano-1.0.4-py3.7.egg/theano/tensor/subtensor.py:2197: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
      "  rval = inputs[0].__getitem__(inputs[1:])\n",
      "/home/junpenglao/anaconda3/lib/python3.7/site-packages/Theano-1.0.4-py3.7.egg/theano/tensor/subtensor.py:2197: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
      "  rval = inputs[0].__getitem__(inputs[1:])\n"
     ]
    }
   ],
   "source": [
    "inference.fit(100, callbacks=[eval_tracker]);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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mjixYRJBLeChhx5ix44ddOnShQceeIDnn3+eHj160KlTJ5544gkACgsLueiii+jcuTPnnHMOM2fOZNq018jM3MfgwYMZPHhwpfu/9dZbOffcc+nQoUPF/gBWrFhB37596dy5Mz179iQ/Px+Hw8H9999Px44d6dSpE6+//jogU3McOnQIgJUrVzJo0CAAJk+ezPjx4xk2bBg33HADu3btYsCAAXTr1o1u3bqxePHiiuM999xzdOzYkc6dO1ecc7du3Sq+37ZtG927d6+163qsKC72/lufeP11eOml+j9ufcMg2UBcYxO1j6AoH/XCPffA2rW1u88uXeCVVyr9+tlnn2Xjxo2sXbuWn376idmzZ7N8+XK01owaNYqFCxeSmZlJs2bNmDNnDgC5ubmce24c7777Ej/++CvNmzeudP9PP/00CQkJOBwOzj//fNavX0/btm256qqrmDlzJj169CAvL4+IiAjeeecdUlNTWbNmDVarlezs7KOe3qpVq/jjjz+IiIigqKiIefPmYbPZ2LZtG9dccw0rV65k7ty5fP311yxbtozIyEiys7NJSEggLi6OtWvX0qVLF6ZNm8aYMWNqfHlrG4aRCoQi+PxzKC2F++6r/2PXJwJ5jU3UPkxFUMv46aef+Omnn+jatSvdunVjy5YtbNu2jY4dOzJ//nwefPBBfv/9d+Li4ioSbY6jLBE+a9YsunXrRteuXdm0aRObN29m69atNG3alB49ZCna2NhYrFYr8+fPZ8KECVitwvEJCQlHbfOoUaOIiIgAZHDeuHHj6NixI1dccQWbN28GYP78+dx4441ERkZ67ffmm29m2rRpOBwOZs6cybXXXlvja1bbCKQisNtPDuMYyGtsovYRfIqgCs+9PqC15uGHH+aWW2454rtVq1aRkpLCww8/zLBhw7j66scBcDor319qaiovvPACK1asoFGjRowZMwa73Y7W2m8JZmWfW61WnK4D+dbvR0VFVfz/8ssvk5yczLp163A6ndhstir3e/nll/Pkk08yZMgQunfvTmJiYuUnU08IpLdqt58cSWpTEQQXTEVQC4iJiSE/Px+ACy+8kKlTp1JQUABAeno6Bw8eZN++fURGRnL99ddz//33s3r1arSGyMgYcnPzK913Xl4eUVFRxMXFceDAAebOnQtA27Zt2bdvHytWrAAgPz+f8vJyhg0bxttv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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "_, ax = plt.subplots(1, 1)\n",
    "df = pd.DataFrame(eval_tracker['test_accuracy']).T.melt()\n",
    "sns.lineplot(x=\"variable\", y=\"value\", data=df, color='red', ax=ax)\n",
    "ax.plot(eval_tracker['train_accuracy'], color='blue')\n",
    "ax.set_xlabel('epoch')\n",
    "plt.legend(['test_accuracy', 'train_accuracy'])\n",
    "plt.title('Training Progress');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Training does not seem to be working here. Let's use a different optimizer and boost the learning rate."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "        <style>\n",
       "            /* Turns off some styling */\n",
       "            progress {\n",
       "                /* gets rid of default border in Firefox and Opera. */\n",
       "                border: none;\n",
       "                /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "                background-size: auto;\n",
       "            }\n",
       "            .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "                background: #F44336;\n",
       "            }\n",
       "        </style>\n",
       "      <progress value='400' class='' max='400', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [400/400 00:23<00:00]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/junpenglao/anaconda3/lib/python3.7/site-packages/Theano-1.0.4-py3.7.egg/theano/tensor/subtensor.py:2197: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
      "  rval = inputs[0].__getitem__(inputs[1:])\n"
     ]
    }
   ],
   "source": [
    "inference.fit(400, obj_optimizer=pm.adamax(learning_rate=0.1), callbacks=[eval_tracker]);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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c889tG7dGo/Hw6hRo/jhhx/o06cPZ555JtOmTWPo0KEUFRXRrFkzpkyZwpo1a/j+++9JSUlh586d1co/f/58vvzyS5o1a8b+/fv55JNPyMjIYMWKFZx99tnMmzePDz74gDfffJM5c+aQmZnJzp07ad26NdnZ2SxYsIBBgwbx/PPPM6mqrQzrQFKqiFjCPfEYKDFiBPz4I/TrV7d61BAojYJqWu71wccff8zHH3/MoYceCsDevXtZsWIFI0eO5LrrruOGG27gxBNPZOTIkTHXOX36dKZMmUJFRQWbNm1iyZIliAjt27dn6NChALRs2RKATz/9lMsuu4wU35+qdevW1dY/fvx4mjVrBtgJeldeeSULFizA7XazfPnyynovvPBCMjMzg+q9+OKLef7553nooYeYNm0a3377bcz3VRNURUQhXiPm+vevex06akhRLMYYbrzxRn73K17ULQAADudJREFUu9+FnZs/fz7vv/8+N954I2PGjOG2226LUEMwa9as4cEHH2Tu3Lm0atWKSZMmUVJSgjEm4jDMaOkpKSl4vV6AsDH8zZs3r/z88MMP065dOxYuXIjX6yUjI6PKek8//XTuuOMOjjvuOAYPHkybNm2qvafakFSdxTWhMQ2d1nkESjKTlZXFnj17ADj++ON57rnn2Lt3LwAbNmxg69atbNy4kczMTM477zyuu+66yrh6YNlIFBUV0bx5c7Kzs9myZQsffPABAH369GHjxo3MnTsXgD179lBRUcGYMWN4+umnKzt+ndBQt27dKmP3b7zxRtTr7d69m/bt2+NyuZg6dSoejweAMWPG8Nxzz1V2bDv1ZmRkcPzxx3P55Zdz4YUX1uLpxUZSGYKaKHcnfNQURg3VYMkRRWl0tGnThiOPPJL+/fvzySefcM4553DEEUcwYMAAJkyYwJ49e/jxxx8ZNmwYgwYN4p577uGWW24B4NJLL2XcuHEce+yxEevOz8/n0EMPpV+/fvz2t7/lyCOPBCAtLY1p06Zx1VVXkZ+fz+jRoykpKeHiiy+mS5cuDBw4kPz8fF555RUA/vznP3P11VczcuRI3FW44L///e958cUXGT58OMuXL6/0FsaOHcv48eMZMmQIgwYN4sEHH6wsc+655yIijBkzJi7PMyLGmAPqNXjwYFNb7rjDGDDm1luj57Gq35jJk+373XdXnzfRlJfX/FrffOMv4/UmTjalabNkyZKGFiHpeeCBB8wtt9xSozKRvjdgnomiVzVoEIV47SUQD+oaGmoM96AoSs059dRTWbVqFTNmzEjodZLSEDSGcE9NqI0iT/RsZ0U50Dj88MMpLS0NSps6dSoDBgxoIImq57///W+9XCcpDUFNaAxGQw2BotSdOXPmNLQIjRZVF00UNQSKosRKUqmL2rSsD9T4us4dUBQlVpLKENSGxhAaqg3qESiKEiuqLqJwoHoCDmoIFEWJlaRUF7G08g9UT8BBDYGiKLGSVOriQG/l1wTtI1CaCrXdj+CEE06gsLAwARI1PXT4aBQOdKOhHoESbxpoO4JKQ/D73/8+KN3j8VS5nMP7778fDxETRnXy1yeqLpooNdlqU1EaM4Eb0wwdOpRjjz2Wc845p3Ii2CmnnMLgwYPp168fU6ZMqSzXrVs3tm/fztq1aznkkEO45JJL6NevH2PGjKG4uDjq9f7xj38wdOhQ8vPzOf300ysXgtuyZQunnnoq+fn55Ofn8/XXXwPw0ksvVa49dP755wMwadIkXn/99co6W7RoAcDnn38es/wffvghhx12GPn5+YwaNQqv10uvXr3Ytm0bAF6vl549e7J9+/Y6P+MGXzuopq+6rDV011127Z2bboqex1mf58YbG89aQ7W51vr1Nn9GRuJkUpo+jWGtoTVr1ph+/foZY4yZOXOmyczMNKtXr648v2PHDmOMMfv37zf9+vUz27dvN8YY07VrV7Nt2zazZs0a43a7zffff2+MMWbixIlm6tSpUa/nlDfGmJtvvtk89thjxhhjzjjjDPPwww8bY4ypqKgwhYWFZtGiRaZ3795m27ZtQbL85je/Ma+99lplPc2bN6+R/Fu3bjWdOnWqzOfkuf322ytl+Oijj8xpp50W8R5qutaQegR1oFcvyMlpaCki43icaWkNK4eixJthw4bRvXv3yuPHHnuM/Px8hg8fzs8//8yKFSvCynTv3p1BgwYBMHjwYNauXRu1/kWLFjFy5EgGDBjAyy+/zOLFiwGYMWMGl19+OQBut5vs7GxmzJjBhAkTKndAi2Wjmljknz17NkcffXRlPqfe3/72t7z00ksAPPfcc3FbmjqhhkBExorIMhFZKSKTI5xPF5FpvvNzRKRbIuWpCbGEVJYtgxh2qmsQHPnT0xtWDkWJN4EbvXz++ed8+umnfPPNNyxcuJBDDz00bGMYgPSAP4Lb7a5yI/lJkybx+OOP8+OPP/LnP/85Yn0OxlS/UY0xhrKyshrJH63ezp07065dO2bMmMGcOXMYN25cVNlqQsIMgYi4gSeAcUBf4GwR6RuS7SJglzGmJ/AwcH+i5LEyxb++xhqDd37n6hEoBzpVbS6ze/duWrVqRWZmJj/99BOzZ8+u8/X27NlD+/btKS8v5+WXX65MHzVqFE899RRgO3qLiooYNWoU06dPZ8eOHUDkjWreeustysvLayT/EUccwaxZs1izZk1QvWC3rzzvvPM444wz4tbZnEiPYBiw0hiz2hhTBrwKnByS52TgRd/n14FREskMxglHKcayUUtN8jZGfBsf0apVw8qhKHUlcGOa66+/Pujc2LFjqaioYODAgdx6660MHz68zte76667OPzwwxk9ejR9+vSpTH/00UeZOXMmAwYMYPDgwSxevJh+/fpx8803c8wxx5Cfn88111wDwCWXXMKsWbMYNmwYc+bMCfICYpG/bdu2TJkyhdNOO438/HzOPPPMyjLjx49n79698d2xLFrnQV1fwATgnwHH5wOPh+RZBHQKOF4F5Eao61JgHjCvS5cuETtHYmH/fmOuv96YvXuj5/nwQ2OmTTNm3z5jrrvOlmkMPPusMV9+GXt+r9eYO+80Zs2ahImkJAGNobNYCWbu3LnmqKOOqjJPY9qYJlLLPnS+bix5MMZMAaYADBkypNZzfps1g7/+teo8xx/v//zAA7W9Uvz57W9rll8Ebr01MbIoitIw3HfffTz11FNBIat4kMjQUAHQOeC4E7AxWh4RSQGygUba/aooSlPiiiuuYNCgQUGv559/vqHFqpLJkyezbt06jjrqqLjWm0iPYC7QS0S6AxuAs4BzQvK8DfwG+AYbSprhc2EURWkkmCgjWA50nnjiiYYWISHURoUmzCMwxlQAVwIfAUuB6caYxSJyp4iM92V7FmgjIiuBa4CwIaaKojQcGRkZ7Nixo1bKRal/jDHs2LGDjIyMGpWTA+0LHjJkiJk3b15Di6EoSUF5eTkFBQVVjqVXGhcZGRl06tSJ1JAhjyIy3xgzJFIZXXROUZSopKamBs2CVZomusSEoihKkqOGQFEUJclRQ6AoipLkHHCdxSKyDVhXy+K5QBwW7z6g0HtODvSek4O63HNXY0zbSCcOOENQF0RkXrRe86aK3nNyoPecHCTqnjU0pCiKkuSoIVAURUlyks0QTKk+S5ND7zk50HtODhJyz0nVR6AoiqKEk2wegaIoihKCGgJFUZQkJ2kMgYiMFZFlIrJSRJrMKqci8pyIbBWRRQFprUXkExFZ4Xtv5UsXEXnM9wx+EJHDGk7y2iMinUVkpogsFZHFInK1L73J3reIZIjItyKy0HfPd/jSu4vIHN89TxORNF96uu94pe98t4aUv7aIiFtEvheRd33HTfp+AURkrYj8KCILRGSeLy2hv+2kMAQi4gaeAMYBfYGzRaRvw0oVN14AxoakTQY+M8b0Aj7Dv7z3OKCX73Up8FQ9yRhvKoBrjTGHAMOBK3zfZ1O+71LgOGNMPjAIGCsiw4H7gYd997wLuMiX///bu5dQq6o4juPfX1jmI5REQzQSs4EEcntQmQX2HEhEA8PKTEJo0iBHxaUXNK+cBDloYCQVlpI4KdMSHJTizcpKS0PoonQH+cCgCP03WP99OV6vF817zunu/fvAYe+9zjqb9T/sc9be6+zzX6uAYxExD3gz641Fz1HS2FfqHm/lnojoafnPQHuP7fPNYVmnB7AQ+LRluxfo7Xa7RjG+OcC+lu0DwMxcnwkcyPW1wOPD1RvLD+AT4IGmxA1MBPqA2yn/Mh2X5YPHOWUekIW5Pi7rqdttv8g4Z+eX3r3AFsrUtrWNtyXuwwyZu73dx3YjrgiAWcBvLdv9WVZX10TEUYBczsjy2r0POQRwE/A1NY87h0n2AgPAVuAQcDzKJFBwdlyDMefzJ4BpnW3xJVsDPA+cye1p1DveSgCfSdoj6Zksa+ux3ZT5CIabZ6+J983W6n2QNBn4GFgdESdHmE6xFnFHxGmgR9JUYBMwf7hquRzTMUt6CBiIiD2SFlfFw1StRbxDLIqII5JmAFsl7R+h7qjE3ZQrgn7g2pbt2cCRLrWlE36XNBMglwNZXpv3QdLllE5gfURszOLaxw0QEceBLym/j0yVVJ3QtcY1GHM+PwX4o7MtvSSLgIclHQY+oAwPraG+8Q6KiCO5HKB0+LfR5mO7KR3BbuCGvOPgCuAxYHOX29ROm4GVub6SMoZelT+VdxrcAZyoLjfHEpVT/3eAnyLijZanahu3pOl5JYCkCcD9lB9RvwCWZrWhMVfvxVJge+Qg8lgQEb0RMTsi5lA+r9sjYjk1jbciaZKkq6p14EFgH+0+trv9w0gHf4BZAvxMGVd9sdvtGcW43geOAv9Qzg5WUcZGtwG/5PLqrCvK3VOHgO+BW7vd/v8Y812Uy9/vgL35WFLnuIEFwDcZ8z7glSyfC+wCDgIbgPFZfmVuH8zn53Y7hkuIfTGwpQnxZnzf5uOH6ruq3ce2U0yYmTVcU4aGzMzsPNwRmJk1nDsCM7OGc0dgZtZw7gjMzBrOHYFZB0laXGXSNPu/cEdgZtZw7gjMhiHpycz/v1fS2kz4dkrS65L6JG2TND3r9kj6KvPBb2rJFT9P0uc5h0CfpOtz95MlfSRpv6T1GiFJklknuCMwG0LSfGAZJflXD3AaWA5MAvoi4mZgB/BqvuRd4IWIWED5d2dVvh54K8ocAndS/gEOJVvqasrcGHMpeXXMuqYp2UfNLsZ9wC3A7jxZn0BJ8nUG+DDrvAdslDQFmBoRO7J8HbAh88XMiohNABHxF0Dub1dE9Of2Xsp8EjvbH5bZ8NwRmJ1LwLqI6D2rUHp5SL2R8rOMNNzzd8v6afw5tC7z0JDZubYBSzMffDVf7HWUz0uV+fIJYGdEnACOSbo7y1cAOyLiJNAv6ZHcx3hJEzsahdkF8pmI2RAR8aOklyizRF1Gyez6LPAncKOkPZQZsJblS1YCb+cX/a/A01m+Algr6bXcx6MdDMPsgjn7qNkFknQqIiZ3ux1mo81DQ2ZmDecrAjOzhvMVgZlZw7kjMDNrOHcEZmYN547AzKzh3BGYmTXcv/KRkhWo8cfvAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "_, ax = plt.subplots(1, 1)\n",
    "df = pd.DataFrame(np.asarray(eval_tracker['test_accuracy'])).T.melt()\n",
    "sns.lineplot(x=\"variable\", y=\"value\", data=df, color='red', ax=ax)\n",
    "ax.plot(eval_tracker['train_accuracy'], color='blue')\n",
    "ax.set_xlabel('epoch')\n",
    "plt.legend(['test_accuracy', 'train_accuracy'])\n",
    "plt.title('Training Progress');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This is much better! \n",
    "\n",
    "So, `Tracker` allows us to monitor our approximation and choose good training schedule."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Minibatches\n",
    "When dealing with large datasets, using minibatch training can drastically speed up and improve approximation performance. Large datasets impose a hefty cost on the computation of gradients. \n",
    "\n",
    "There is a nice API in pymc3 to handle these cases, which is avaliable through the `pm.Minibatch` class. The minibatch is just a highly specialized Theano tensor:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True"
      ]
     },
     "execution_count": 50,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "issubclass(pm.Minibatch, theano.tensor.TensorVariable)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "To demonstrate, let's simulate a large quantity of data:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 51,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Raw values\n",
    "data = np.random.rand(40000, 100) \n",
    "# Scaled values\n",
    "data *= np.random.randint(1, 10, size=(100,))\n",
    "# Shifted values\n",
    "data += np.random.rand(100) * 10    "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For comparison, let's fit a model without minibatch processing:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {},
   "outputs": [],
   "source": [
    "with pm.Model() as model:\n",
    "    mu = pm.Flat('mu', shape=(100,))\n",
    "    sd = pm.HalfNormal('sd', shape=(100,))\n",
    "    lik = pm.Normal('lik', mu, sd, observed=data)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Just for fun, let's create a custom special purpose callback to halt slow optimization. Here we define a callback that causes a hard stop when approximation runs too slowly:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [],
   "source": [
    "def stop_after_10(approx, loss_history, i):\n",
    "    if (i > 0) and (i % 10) == 0:\n",
    "        raise StopIteration('I was slow, sorry')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "        <style>\n",
       "            /* Turns off some styling */\n",
       "            progress {\n",
       "                /* gets rid of default border in Firefox and Opera. */\n",
       "                border: none;\n",
       "                /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "                background-size: auto;\n",
       "            }\n",
       "            .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "                background: #F44336;\n",
       "            }\n",
       "        </style>\n",
       "      <progress value='9' class='' max='10000', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      0.09% [9/10000 00:01<19:13 Average Loss = 7.7692e+08]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "I was slow, sorry\n",
      "Interrupted at 9 [0%]: Average Loss = 5.6736e+08\n"
     ]
    }
   ],
   "source": [
    "with model:\n",
    "    advifit = pm.fit(callbacks=[stop_after_10])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Inference is too slow, taking several seconds per iteration; fitting the approximation would have taken hours!\n",
    "\n",
    "Now let's use minibatches. At every iteration, we will draw 500 random values:\n",
    "\n",
    "> Remember to set `total_size` in observed\n",
    "\n",
    "**total_size** is an important parameter that allows pymc3 to infer the right way of rescaling densities. If it is not set, you are likely to get completely wrong results. For more information please refer to the comprehensive documentation of `pm.Minibatch`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/junpenglao/anaconda3/lib/python3.7/site-packages/pymc3-3.8-py3.7.egg/pymc3/data.py:260: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n"
     ]
    }
   ],
   "source": [
    "X = pm.Minibatch(data, batch_size=500)\n",
    "\n",
    "with pm.Model() as model:\n",
    "    \n",
    "    mu = pm.Flat('mu', shape=(100,))\n",
    "    sd = pm.HalfNormal('sd', shape=(100,))\n",
    "    likelihood = pm.Normal('likelihood', mu, sd, observed=X, total_size=data.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "        <style>\n",
       "            /* Turns off some styling */\n",
       "            progress {\n",
       "                /* gets rid of default border in Firefox and Opera. */\n",
       "                border: none;\n",
       "                /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "                background-size: auto;\n",
       "            }\n",
       "            .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "                background: #F44336;\n",
       "            }\n",
       "        </style>\n",
       "      <progress value='10000' class='' max='10000', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      100.00% [10000/10000 00:07<00:00 Average Loss = 1.5474e+05]\n",
       "    </div>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Finished [100%]: Average Loss = 1.5467e+05\n"
     ]
    }
   ],
   "source": [
    "with model:\n",
    "    advifit = pm.fit()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(advifit.hist);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Minibatch inference is dramatically faster. Multidimensional minibatches may be needed for some corner cases where you do matrix factorization or model is very wide.\n",
    "\n",
    "Here is the docstring for `Minibatch` to illustrate how it can be customized."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Multidimensional minibatch that is pure TensorVariable\n",
      "\n",
      "    Parameters\n",
      "    ----------\n",
      "    data : :class:`ndarray`\n",
      "        initial data\n",
      "    batch_size : ``int`` or ``List[int|tuple(size, random_seed)]``\n",
      "        batch size for inference, random seed is needed\n",
      "        for child random generators\n",
      "    dtype : ``str``\n",
      "        cast data to specific type\n",
      "    broadcastable : tuple[bool]\n",
      "        change broadcastable pattern that defaults to ``(False, ) * ndim``\n",
      "    name : ``str``\n",
      "        name for tensor, defaults to \"Minibatch\"\n",
      "    random_seed : ``int``\n",
      "        random seed that is used by default\n",
      "    update_shared_f : ``callable``\n",
      "        returns :class:`ndarray` that will be carefully\n",
      "        stored to underlying shared variable\n",
      "        you can use it to change source of\n",
      "        minibatches programmatically\n",
      "    in_memory_size : ``int`` or ``List[int|slice|Ellipsis]``\n",
      "        data size for storing in theano.shared\n",
      "\n",
      "    Attributes\n",
      "    ----------\n",
      "    shared : shared tensor\n",
      "        Used for storing data\n",
      "    minibatch : minibatch tensor\n",
      "        Used for training\n",
      "\n",
      "    Notes\n",
      "    -----\n",
      "    Below is a common use case of Minibatch within the variational inference.\n",
      "    Importantly, we need to make PyMC3 \"aware\" of minibatch being used in inference.\n",
      "    Otherwise, we will get the wrong :math:`logp` for the model.\n",
      "    To do so, we need to pass the ``total_size`` parameter to the observed node, which correctly scales\n",
      "    the density of the model logp that is affected by Minibatch. See more in examples below.\n",
      "\n",
      "    Examples\n",
      "    --------\n",
      "    Consider we have data\n",
      "    >>> data = np.random.rand(100, 100)\n",
      "\n",
      "    if we want 1d slice of size 10 we do\n",
      "    >>> x = Minibatch(data, batch_size=10)\n",
      "\n",
      "    Note that your data is cast to ``floatX`` if it is not integer type\n",
      "    But you still can add the ``dtype`` kwarg for :class:`Minibatch`\n",
      "\n",
      "    in case we want 10 sampled rows and columns\n",
      "    ``[(size, seed), (size, seed)]`` it is\n",
      "    >>> x = Minibatch(data, batch_size=[(10, 42), (10, 42)], dtype='int32')\n",
      "    >>> assert str(x.dtype) == 'int32'\n",
      "\n",
      "    or simpler with default random seed = 42\n",
      "    ``[size, size]``\n",
      "    >>> x = Minibatch(data, batch_size=[10, 10])\n",
      "\n",
      "    x is a regular :class:`TensorVariable` that supports any math\n",
      "    >>> assert x.eval().shape == (10, 10)\n",
      "\n",
      "    You can pass it to your desired model\n",
      "    >>> with pm.Model() as model:\n",
      "    ...     mu = pm.Flat('mu')\n",
      "    ...     sd = pm.HalfNormal('sd')\n",
      "    ...     lik = pm.Normal('lik', mu, sd, observed=x, total_size=(100, 100))\n",
      "\n",
      "    Then you can perform regular Variational Inference out of the box\n",
      "    >>> with model:\n",
      "    ...     approx = pm.fit()\n",
      "\n",
      "    Notable thing is that :class:`Minibatch` has ``shared``, ``minibatch``, attributes\n",
      "    you can call later\n",
      "    >>> x.set_value(np.random.laplace(size=(100, 100)))\n",
      "\n",
      "    and minibatches will be then from new storage\n",
      "    it directly affects ``x.shared``.\n",
      "    the same thing would be but less convenient\n",
      "    >>> x.shared.set_value(pm.floatX(np.random.laplace(size=(100, 100))))\n",
      "\n",
      "    programmatic way to change storage is as follows\n",
      "    I import ``partial`` for simplicity\n",
      "    >>> from functools import partial\n",
      "    >>> datagen = partial(np.random.laplace, size=(100, 100))\n",
      "    >>> x = Minibatch(datagen(), batch_size=10, update_shared_f=datagen)\n",
      "    >>> x.update_shared()\n",
      "\n",
      "    To be more concrete about how we get minibatch, here is a demo\n",
      "    1) create shared variable\n",
      "    >>> shared = theano.shared(data)\n",
      "\n",
      "    2) create random slice of size 10\n",
      "    >>> ridx = pm.tt_rng().uniform(size=(10,), low=0, high=data.shape[0]-1e-10).astype('int64')\n",
      "\n",
      "    3) take that slice\n",
      "    >>> minibatch = shared[ridx]\n",
      "\n",
      "    That's done. Next you can use this minibatch somewhere else.\n",
      "    You can see that implementation does not require fixed shape\n",
      "    for shared variable. Feel free to use that if needed.\n",
      "\n",
      "    Suppose you need some replacements in the graph, e.g. change minibatch to testdata\n",
      "    >>> node = x ** 2  # arbitrary expressions on minibatch ``x``\n",
      "    >>> testdata = pm.floatX(np.random.laplace(size=(1000, 10)))\n",
      "\n",
      "    Then you should create a dict with replacements\n",
      "    >>> replacements = {x: testdata}\n",
      "    >>> rnode = theano.clone(node, replacements)\n",
      "    >>> assert (testdata ** 2 == rnode.eval()).all()\n",
      "\n",
      "    To replace minibatch with it's shared variable you should do\n",
      "    the same things. Minibatch variable is accessible as an attribute\n",
      "    as well as shared, associated with minibatch\n",
      "    >>> replacements = {x.minibatch: x.shared}\n",
      "    >>> rnode = theano.clone(node, replacements)\n",
      "\n",
      "    For more complex slices some more code is needed that can seem not so clear\n",
      "    >>> moredata = np.random.rand(10, 20, 30, 40, 50)\n",
      "\n",
      "    default ``total_size`` that can be passed to ``PyMC3`` random node\n",
      "    is then ``(10, 20, 30, 40, 50)`` but can be less verbose in some cases\n",
      "\n",
      "    1) Advanced indexing, ``total_size = (10, Ellipsis, 50)``\n",
      "    >>> x = Minibatch(moredata, [2, Ellipsis, 10])\n",
      "\n",
      "    We take slice only for the first and last dimension\n",
      "    >>> assert x.eval().shape == (2, 20, 30, 40, 10)\n",
      "\n",
      "    2) Skipping particular dimension, ``total_size = (10, None, 30)``\n",
      "    >>> x = Minibatch(moredata, [2, None, 20])\n",
      "    >>> assert x.eval().shape == (2, 20, 20, 40, 50)\n",
      "\n",
      "    3) Mixing that all, ``total_size = (10, None, 30, Ellipsis, 50)``\n",
      "    >>> x = Minibatch(moredata, [2, None, 20, Ellipsis, 10])\n",
      "    >>> assert x.eval().shape == (2, 20, 20, 40, 10)\n",
      "    \n"
     ]
    }
   ],
   "source": [
    "print(pm.Minibatch.__doc__)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
